@polygaryd you were replying to a reply from 2 years ago, from a thread originally started back in 2016. it's not helpful to bump ancient topics because they can contain a lot of outdated/wrong/irrelevant advice. if you have an issue please post a new thread.
I ended up just building it from scratch. I tried what you said. After one of the reboots it started saying my es_systems.cfg was messed up and had to fixed manually. I used the bak that was there and that did nothing. Its no big deal. Its always been an ongoing project
Coincidentally I have purchased and tested a cheap USB hub with 7 ports on my raspi1 today. Some ports doesn't work as expected, but I didn't have time to check it deeper.
Did you turn on the "Save config on exit" in RetroArch (config_save_on_exit = "true" in retroarch.cfg). I'm not sure but by your description it seems to be your problem (at least one of them).